//GUI迷宫主窗口的头文件
#ifndef MAZEMAINWIN_H
#define MAZEMAINWIN_H

#include <QWidget>
#include <QPushButton>
#include <QGridLayout>
#include <QLabel>
#include <QSpinBox>

#include "mazeBoard.h"

class mazeMainWin : public QWidget
{
    Q_OBJECT
private:
    mazeBoard mBoard;       //GUI迷宫

    QGridLayout *mainL, *funcL, *buildL, *showL, *fileL;    //各种布局

    QPushButton buildB, buildSaveB, buildCancleB;           //各种按钮
    QPushButton showB, showPathB, randMapB;

    QPushButton loadFromFile, saveToFile;

    QLabel pathNumLB, pathNumValueLB;       //各种标签

    QWidget funcW;

    QSpinBox buildSizeSB, pathNumSB, randMapSB;     //调节数字的控件



public:
    mazeMainWin(QWidget *parent = 0);

signals:

public slots:
    int buildBClicked();            //建筑模式按键按下
    int buildSaveBClicked();        //建筑模式保存键按下
    int buildCancleBClicked();      //建筑模式取消键被按下

    int showBClicked();             //展示模式键被按下
    int showPathBClicked();         //展示路径键被按下
    int randMapBClicked();          //随机地图键被按下

    int loadFromFileCliked();       //加载文件键被按下
    int saveToFileClicked();        //保存到文件键被按下
};

#endif // MAZEMAINWIN_H
